package com.dfrobot.demo.domain.entity;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.*;
import lombok.Data;

@Data
@Table(name = "order")
public class Order {
    @Id
    @Column(name = "order_id")
    private Integer orderId;

    @Column(name = "invoice_no")
    private Integer invoiceNo;

    @Column(name = "invoice_prefix")
    private String invoicePrefix;

    @Column(name = "store_id")
    private Integer storeId;

    @Column(name = "store_name")
    private String storeName;

    @Column(name = "store_url")
    private String storeUrl;

    @Column(name = "customer_id")
    private Integer customerId;

    @Column(name = "customer_group_id")
    private Integer customerGroupId;

    private String firstname;

    private String lastname;

    private String email;

    private String telephone;

    private String fax;

    @Column(name = "payment_firstname")
    private String paymentFirstname;

    @Column(name = "payment_lastname")
    private String paymentLastname;

    @Column(name = "payment_company")
    private String paymentCompany;

    @Column(name = "payment_address_1")
    private String paymentAddress1;

    @Column(name = "payment_address_2")
    private String paymentAddress2;

    @Column(name = "payment_city")
    private String paymentCity;

    @Column(name = "payment_postcode")
    private String paymentPostcode;

    @Column(name = "payment_country")
    private String paymentCountry;

    @Column(name = "payment_country_id")
    private Integer paymentCountryId;

    @Column(name = "payment_zone")
    private String paymentZone;

    @Column(name = "payment_zone_id")
    private Integer paymentZoneId;

    @Column(name = "payment_method")
    private String paymentMethod;

    @Column(name = "payment_code")
    private String paymentCode;

    @Column(name = "shipping_firstname")
    private String shippingFirstname;

    @Column(name = "shipping_lastname")
    private String shippingLastname;

    @Column(name = "shipping_company")
    private String shippingCompany;

    @Column(name = "shipping_address_1")
    private String shippingAddress1;

    @Column(name = "shipping_address_2")
    private String shippingAddress2;

    @Column(name = "shipping_city")
    private String shippingCity;

    @Column(name = "shipping_postcode")
    private String shippingPostcode;

    @Column(name = "shipping_country")
    private String shippingCountry;

    @Column(name = "shipping_country_id")
    private Integer shippingCountryId;

    @Column(name = "shipping_zone")
    private String shippingZone;

    @Column(name = "shipping_zone_id")
    private Integer shippingZoneId;

    @Column(name = "shipping_method")
    private String shippingMethod;

    @Column(name = "shipping_code")
    private String shippingCode;

    private BigDecimal total;

    @Column(name = "order_status_id")
    private Integer orderStatusId;

    @Column(name = "affiliate_id")
    private Integer affiliateId;

    private BigDecimal commission;

    @Column(name = "marketing_id")
    private Integer marketingId;

    private String tracking;

    @Column(name = "language_id")
    private Integer languageId;

    @Column(name = "currency_id")
    private Integer currencyId;

    @Column(name = "currency_code")
    private String currencyCode;

    @Column(name = "currency_value")
    private BigDecimal currencyValue;

    private String ip;

    @Column(name = "forwarded_ip")
    private String forwardedIp;

    @Column(name = "user_agent")
    private String userAgent;

    @Column(name = "accept_language")
    private String acceptLanguage;

    @Column(name = "date_added")
    private Date dateAdded;

    @Column(name = "date_modified")
    private Date dateModified;

    @Column(name = "shipping_telephone")
    private String shippingTelephone;

    @Column(name = "payment_telephone")
    private String paymentTelephone;

    private Integer reward;

    private Short sendmail;

    private Short linpro;

    @Column(name = "custom_field")
    private String customField;

    @Column(name = "payment_address_format")
    private String paymentAddressFormat;

    @Column(name = "payment_custom_field")
    private String paymentCustomField;

    @Column(name = "shipping_address_format")
    private String shippingAddressFormat;

    @Column(name = "shipping_custom_field")
    private String shippingCustomField;

    private String comment;
}